package com.panasonic.cn.cmsc;

import java.io.*;
import java.lang.*;
import java.util.*;
import java.math.*;
import java.sql.SQLException;
import com.fujitsu.fks.jaaf.core.*;

public class SQLMM2405{
	private Hashtable paramsString     = new Hashtable();
	private Hashtable paramsBigDecimal = new Hashtable();
	private Hashtable paramsFree       = new Hashtable();
	private String lastSql_ = null;

	private String getString(String name){
		if(name==null) return "";
		String returnStr = (String)paramsString.get(name);
		if(returnStr==null) return "";
		return "'"+FrameworkCommon.stringReplaceSQuote(returnStr)+"'";
	}

	private String getBigDecimal(String name){
		if(name==null) return "";
		BigDecimal returnStr = (BigDecimal)paramsBigDecimal.get(name);
		if(returnStr==null) return "";
		return returnStr.toString();
	}

	private String getFree(String name){
		if(name==null) return "";
		String returnStr = (String)paramsFree.get(name);
		if(returnStr==null) return "";
		return returnStr;
	}

	public String getLastSql(){
		return lastSql_;
	}

	public SelectResultRset SELECT_M2401(FrameworkDbCommon db) throws Exception {
		StringBuffer sql = new StringBuffer();
		sql.append("  SELECT ");
		sql.append("  NVL(BEACHHEAD_CD,'') AS BEACHHEAD_CD,         ");
		sql.append("  NVL(VDR_CD,'') AS VDR_CD,");
		sql.append("  NVL(APL_BDT,'') AS APL_BDT,           ");
		sql.append("  NVL(APL_EDT,'') AS APL_EDT,");
		sql.append("  NVL(CTRL_DVSN_CD,'') AS CTRL_DVSN_CD,	 ");
		sql.append("  NVL(COURSECD,'') AS COURSECD,");
		sql.append("  NVL(DELIVER_ORDER,'') AS DELIVER_ORDER,           ");
		sql.append("  NVL(MILEAGE,'') AS  MILEAGE,    ");
		sql.append("  TO_CHAR(NVL( RGS_DTTM,''),'YYYYMMDDHH24MISS') AS RGS_DTTM,");
		sql.append("  NVL(RGS_CHRG_CD,'') AS RGS_CHRG_CD,");
		sql.append("  NVL(RGS_PGID,'') AS RGS_PGID,");
		sql.append("  TO_CHAR(NVL( UPD_DTTM,''),'YYYYMMDDHH24MISS') AS UPD_DTTM,");
		sql.append("  NVL(UPD_CHRG_CD,'') AS UPD_CHRG_CD,");
		sql.append("  NVL(UPD_PGID,'') AS UPD_PGID,");
		sql.append("  NVL(FM_TYP,'') AS FM_TYP");
		sql.append("  FROM M24");
		sql.append("  WHERE   ");
		sql.append("  CTRL_DVSN_CD "+((getString("CTRL_DVSN_CD").equals(""))?" is null ":"=")+getString("CTRL_DVSN_CD")+"  ");
		sql.append("  AND");
		sql.append("  BEACHHEAD_CD "+((getString("BEACHHEAD_CD").equals(""))?" is null ":"=")+getString("BEACHHEAD_CD")+" ");
		sql.append("  AND  ");
		sql.append("  VDR_CD "+((getString("VDR_CD").equals(""))?" is null ":"=")+getString("VDR_CD")+"    ");
		db.setSql(sql.toString());
		lastSql_ =sql.toString();
		SelectResultRset srr = db.executeQuery();
		paramsString     = new Hashtable();
		paramsBigDecimal = new Hashtable();
		paramsFree       = new Hashtable();

		return srr;
	}

	public SelectResultRset SELECT_M2402(FrameworkDbCommon db) throws Exception {
		StringBuffer sql = new StringBuffer();
		sql.append("	SELECT ");
		sql.append("	NVL(COURSE_NAME,'') AS COURSE_NAME ");
		sql.append("	FROM ");
		sql.append("	M25 ");
		sql.append("	WHERE  ");
		sql.append("	COURSECD "+((getString("COURSECD").equals(""))?" is null ":"=")+getString("COURSECD")+" ");
		sql.append("	AND");
		sql.append("	FM_TYP <> "+getString("FM_TYP_6")+"");
		sql.append("	AND");
		sql.append("	FM_TYP <> "+getString("FM_TYP_9")+"");
		sql.append("	AND");
		sql.append("	APL_BDT <"+((getString("APL_BDT").equals(""))?" is null ":"=")+getString("APL_BDT")+"");
		sql.append("	AND");
		sql.append("	APL_EDT >"+((getString("APL_EDT").equals(""))?" is null ":"=")+getString("APL_EDT")+"");
		sql.append("	AND");
		sql.append("	CTRL_DVSN_CD"+((getString("CTRL_DVSN_CD").equals(""))?" is null ":"=")+getString("CTRL_DVSN_CD")+"	  ");
		sql.append("	");
		sql.append("	");
		db.setSql(sql.toString());
		lastSql_ =sql.toString();
		SelectResultRset srr = db.executeQuery();
		paramsString     = new Hashtable();
		paramsBigDecimal = new Hashtable();
		paramsFree       = new Hashtable();

		return srr;
	}

	public SelectResultRset SELECT_M0102(FrameworkDbCommon db) throws Exception {
		StringBuffer sql = new StringBuffer();
		sql.append("	SELECT ");
		sql.append("	NVL(TRPT_NM_CN,'') AS TRPT_NM_CN ");
		sql.append("	FROM ");
		sql.append("	M01 ");
		sql.append("	WHERE  ");
		sql.append("	VDR_CD "+((getString("VDR_CD").equals(""))?" is null ":"=")+getString("VDR_CD")+" ");
		sql.append("	AND");
		sql.append("	FM_TYP <> "+getString("FM_TYP_6")+"");
		sql.append("	AND");
		sql.append("	FM_TYP <> "+getString("FM_TYP_9")+"");
		sql.append("	AND");
		sql.append("	APL_BDT <"+((getString("APL_BDT").equals(""))?" is null ":"=")+getString("APL_BDT")+"");
		sql.append("	AND");
		sql.append("	APL_EDT >"+((getString("APL_EDT").equals(""))?" is null ":"=")+getString("APL_EDT")+"	");
		db.setSql(sql.toString());
		lastSql_ =sql.toString();
		SelectResultRset srr = db.executeQuery();
		paramsString     = new Hashtable();
		paramsBigDecimal = new Hashtable();
		paramsFree       = new Hashtable();

		return srr;
	}


	public void setCTRL_DVSN_CD(String value){
		if(value==null) {
			paramsString.remove("CTRL_DVSN_CD");
			return;
		}
		paramsString.put("CTRL_DVSN_CD",value);
	}


	public void setBEACHHEAD_CD(String value){
		if(value==null) {
			paramsString.remove("BEACHHEAD_CD");
			return;
		}
		paramsString.put("BEACHHEAD_CD",value);
	}


	public void setVDR_CD(String value){
		if(value==null) {
			paramsString.remove("VDR_CD");
			return;
		}
		paramsString.put("VDR_CD",value);
	}


	public void setCOURSECD(String value){
		if(value==null) {
			paramsString.remove("COURSECD");
			return;
		}
		paramsString.put("COURSECD",value);
	}


	public void setFM_TYP_6(String value){
		if(value==null) {
			paramsString.remove("FM_TYP_6");
			return;
		}
		paramsString.put("FM_TYP_6",value);
	}


	public void setFM_TYP_9(String value){
		if(value==null) {
			paramsString.remove("FM_TYP_9");
			return;
		}
		paramsString.put("FM_TYP_9",value);
	}


	public void setAPL_BDT(String value){
		if(value==null) {
			paramsString.remove("APL_BDT");
			return;
		}
		paramsString.put("APL_BDT",value);
	}


	public void setAPL_EDT(String value){
		if(value==null) {
			paramsString.remove("APL_EDT");
			return;
		}
		paramsString.put("APL_EDT",value);
	}


}
